package com.hspedu.outputstream;

import java.io.*;

/**
 * @author DL5O
 * @version 1.0
 * 演示ObjectOutputStream的使用，完成数据的序列化
 */
public class ObjectOutStream_ {
    public static void main(String[] args) throws IOException {
        //序列化后，保存的文件格式，不是纯文本的，而是按照它的格式保存的
        String filePath = "d:\\data.dat";

        ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(filePath));

        //序列化数据到d:\data.dat
        oos.writeInt(100);//int -> Integer(实现了 Serializable)
        oos.writeBoolean(true);// boolean -> Boolean (实现了 Serializable)
        oos.writeChar('a');//同上
        oos.writeDouble(9.5);
        oos.writeUTF("大龙");//String 实现了 Serializable

        //保存一个dog对象
        oos.writeObject(new Dog("旺财",10,"中国","白色"));
        oos.close();
        System.out.println("数据保存完毕(序列化形式)");
    }
}


